package tur.br.moradadosol.view.form;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;

import tur.br.moradadosol.model.Apartamento;

public class ApartamentoForm extends ActionForm {

	private static final long serialVersionUID = -7079252495455361157L;
	
	private String gravar;
	private String cancelar;
	private String deletar;
	private Apartamento apartamento;
	private int altcodigo;
	
	public ApartamentoForm() {

		apartamento = new Apartamento();

	}
	public void reset(ActionMapping mapping, HttpServletRequest request) {
		setGravar("");
		setCancelar("");
		setDeletar("");
	}
	
	public void resetForm(ActionMapping mapping, HttpServletRequest request) {
		apartamento = new Apartamento();
		setAltcodigo(0);
		reset(mapping, request);
	}
	
	public ActionErrors validate(
		ActionMapping mapping,
		HttpServletRequest request) {

		ActionErrors errors = new ActionErrors();
		
		if(getGravar().length() > 0) {
			if(apartamento.getCapacidade() == 0) {
				errors.add("error.apartamento.capacidade", 
					new ActionMessage("error.apartamento.capacidade.required"));
			}
			
			if(apartamento.getSigla() == null 
				|| apartamento.getSigla().trim().length() == 0) {
				
				errors.add("error.apartamento.sigla", 
					new ActionMessage("error.apartamento.sigla.required"));
			}
		}
		
		return errors;
	}
	
	public Apartamento getApartamento() {
		return apartamento;
	}

	public String getCancelar() {
		return cancelar;
	}

	public String getDeletar() {
		return deletar;
	}

	public String getGravar() {
		return gravar;
	}

	public void setApartamento(Apartamento apartamento) {
		this.apartamento = apartamento;
	}

	public void setCancelar(String cancelar) {
		this.cancelar = cancelar;
	}

	public void setDeletar(String deletar) {
		this.deletar = deletar;
	}

	public void setGravar(String gravar) {
		this.gravar = gravar;
	}
	
	public int getCodigo() {
		return this.apartamento.getCodigo();
	}
	
	public void setCodigo(int codigo) {
		this.apartamento.setCodigo(codigo);
	}
	
	public String getSigla() {
		return this.apartamento.getSigla();
	}
	
	public void setSigla(String sigla) {
		this.apartamento.setSigla(sigla);
	}
	
	public int getCapacidade() {
		return this.apartamento.getCapacidade();
	}
	
	public void setCapacidade(int capacidade) {
		this.apartamento.setCapacidade(capacidade);
	}
	
	public int getAltcodigo() {
		return altcodigo;
	}

	public void setAltcodigo(int altCodigo) {
		this.altcodigo = altCodigo;
	}
}
